package com.ruoyi.project.module.order.domain;

import java.math.BigDecimal;
import java.util.Date;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 订单管理对象 tb_order
 * 
 * @author javen
 * @date 2020-12-27
 */
public class Order extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    private Long id;

    /** 会员ID */
    private Long memberId;

    /** 订单类型 */
    @Excel(name = "订单类型")
    private String orderType;

    /** 会员名称 */
    @Excel(name = "会员名称")
    private String memberName;

    /** 订单主题 */
    @Excel(name = "订单主题")
    private String orderSubject;

    /** 订单状态 */
    @Excel(name = "订单状态")
    private String orderStatus;

    /** 订单内容 */
    private String orderObject;

    /** 下单时间 */
    @Excel(name = "下单时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderTime;

    /** 订单总价 */
    private BigDecimal totalPrice;

    /** 支付方式 */
    @Excel(name = "支付方式")
    private String paymentMethod;

    /** 支付流水号 */
    private String outTradeNo;

    /** 支付时间 */
    @Excel(name = "支付时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date paymentTime;

    /** 返回的流水号 */
    private String tradeNo;

    /** 开票时间 */
    @Excel(name = "开票时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date billingTime;

    /** 发票下载路径 */
    private String invoiceUrl;

    /** 发票存储路径 */
    private String invoicePath;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setMemberId(Long memberId)
    {
        this.memberId = memberId;
    }

    public Long getMemberId()
    {
        return memberId;
    }
    public void setOrderType(String orderType)
    {
        this.orderType = orderType;
    }

    public String getOrderType()
    {
        return orderType;
    }
    public void setMemberName(String memberName)
    {
        this.memberName = memberName;
    }

    public String getMemberName()
    {
        return memberName;
    }
    public void setOrderSubject(String orderSubject)
    {
        this.orderSubject = orderSubject;
    }

    public String getOrderSubject()
    {
        return orderSubject;
    }
    public void setOrderStatus(String orderStatus)
    {
        this.orderStatus = orderStatus;
    }

    public String getOrderStatus()
    {
        return orderStatus;
    }
    public void setOrderObject(String orderObject)
    {
        this.orderObject = orderObject;
    }

    public String getOrderObject()
    {
        return orderObject;
    }
    public void setOrderTime(Date orderTime)
    {
        this.orderTime = orderTime;
    }

    public Date getOrderTime()
    {
        return orderTime;
    }
    public void setTotalPrice(BigDecimal totalPrice)
    {
        this.totalPrice = totalPrice;
    }

    public BigDecimal getTotalPrice()
    {
        return totalPrice;
    }
    public void setPaymentMethod(String paymentMethod)
    {
        this.paymentMethod = paymentMethod;
    }

    public String getPaymentMethod()
    {
        return paymentMethod;
    }
    public void setOutTradeNo(String outTradeNo)
    {
        this.outTradeNo = outTradeNo;
    }

    public String getOutTradeNo()
    {
        return outTradeNo;
    }
    public void setPaymentTime(Date paymentTime)
    {
        this.paymentTime = paymentTime;
    }

    public Date getPaymentTime()
    {
        return paymentTime;
    }
    public void setTradeNo(String tradeNo)
    {
        this.tradeNo = tradeNo;
    }

    public String getTradeNo()
    {
        return tradeNo;
    }
    public void setBillingTime(Date billingTime)
    {
        this.billingTime = billingTime;
    }

    public Date getBillingTime()
    {
        return billingTime;
    }
    public void setInvoiceUrl(String invoiceUrl)
    {
        this.invoiceUrl = invoiceUrl;
    }

    public String getInvoiceUrl()
    {
        return invoiceUrl;
    }
    public void setInvoicePath(String invoicePath)
    {
        this.invoicePath = invoicePath;
    }

    public String getInvoicePath()
    {
        return invoicePath;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("memberId", getMemberId())
            .append("orderType", getOrderType())
            .append("memberName", getMemberName())
            .append("orderSubject", getOrderSubject())
            .append("orderStatus", getOrderStatus())
            .append("orderObject", getOrderObject())
            .append("orderTime", getOrderTime())
            .append("totalPrice", getTotalPrice())
            .append("paymentMethod", getPaymentMethod())
            .append("outTradeNo", getOutTradeNo())
            .append("paymentTime", getPaymentTime())
            .append("tradeNo", getTradeNo())
            .append("billingTime", getBillingTime())
            .append("invoiceUrl", getInvoiceUrl())
            .append("invoicePath", getInvoicePath())
            .toString();
    }
}
